home *** CD-ROM | disk | FTP | other *** search
/ PCMania 84 / PCMania CD84_1.iso / Pcmania / demosc84 / TRNSFORM.H < prev    next >
C/C++ Source or Header  |  1999-02-11  |  4KB  |  116 lines

  1. #include "types.h"
  2. #ifdef __TRNSFORM
  3. //LOCAL VARIABLES
  4. static UWORD    *Palette15bpp;
  5. static UWORD    *Palette16bpp;
  6. static UBYTE    *Palette24bppRed;
  7. static UBYTE    *Palette24bppGreen;
  8. static UBYTE    *Palette24bppBlue;
  9. static UBYTE    *Palette32bppRed;
  10. static UBYTE    *Palette32bppGreen;
  11. static UBYTE    *Palette32bppBlue;
  12. static UBYTE    *Palette8bpp;
  13. static UBYTE    *PaletteFake;
  14. static UBYTE    *PaletteFakeGreen;
  15. static UBYTE    *PaletteFakeRedBlue;
  16. static UBYTE    *Palette24bpp;
  17. static UBYTE    *Palette32bpp;
  18.  
  19.  
  20.  
  21. //LOCAL FUNCTIONS
  22. /******************************************************************************/
  23. /*              S C A L E    T R A N S F O R M A T I O N S              */
  24. /******************************************************************************/
  25. static VOID    Scale24(UBYTE *WorkBuffer, UBYTE *ScreenBuffer);
  26. static VOID    Scale16(UBYTE *WorkBuffer, UBYTE *ScreenBuffer);
  27. static VOID    Scale15(UBYTE *WorkBuffer, UBYTE *ScreenBuffer);
  28. static VOID    Scale8(UBYTE *WorkBuffer, UBYTE *ScreenBuffer);
  29.  
  30. /******************************************************************************/
  31. /*               P A L E T T E    C A L C U L A T I O N S              */
  32. /******************************************************************************/
  33. static VOID    Calc24to16bppPal(UWORD *Pal24to16); 
  34. static VOID    Calc24to15bppPal(UWORD *Pal24to15);
  35. static VOID    Calc24to8bppPal(UBYTE *Pal24to8);
  36. static VOID    Calc24toFakePal(UBYTE *Pal24toFake);
  37. static VOID    Calc16to32bppPal(UBYTE *Pal16to32Red, UBYTE *Pal16to32Green, UBYTE *Pal16to32Blue);
  38. static VOID    Calc16to24bppPal(UBYTE *Pal16to24Red, UBYTE *Pal16to24Green, UBYTE *Pal16to24Blue);
  39. static VOID    Calc16to15bppPal(UWORD *Pal16to15);
  40. static VOID    Calc16to8bppPal(UBYTE *Pal16to8);
  41. static VOID    Calc16toFakePal(UBYTE *Pal16toFakeRedBlue,UBYTE *Pal16toFakeGreen);
  42. static VOID    Calc15to32bppPal(UBYTE *Pal15to32Red, UBYTE *Pal15to32Green, UBYTE *Pal15to32Blue);
  43. static VOID    Calc15to24bppPal(UBYTE *Pal15to24Red, UBYTE *Pal15to24Green, UBYTE *Pal15to24Blue);
  44. static VOID    Calc15to16bppPal(UWORD *Pal15to16);
  45. static VOID    Calc15to8bppPal(UBYTE *Pal15to8);
  46. static VOID    Calc15toFakePal(UBYTE *Pal15toFakeRedBlue,UBYTE *Pal15toFakeGreen);
  47. static VOID    Calc8to32bppPal(UBYTE *Pal8to32);
  48. static VOID    Calc8to24bppPal(UBYTE *Pal8to24);
  49. static VOID    Calc8to16bppPal(UWORD *Pal8to16);
  50. static VOID    Calc8to15bppPal(UWORD *Pal8to15);
  51.  
  52. /******************************************************************************/
  53. /*                      I N I T I A L I Z A T I O N S                  */
  54. /******************************************************************************/
  55. static VOID    Init24to16();
  56. static VOID    Init24to15();
  57. static VOID    Init24to8();
  58. static VOID    Init24toFake();
  59. static VOID    Init16to32();
  60. static VOID    Init16to24();
  61. static VOID    Init16to15();
  62. static VOID    Init16to8();
  63. static VOID    Init16toFake();
  64. static VOID    Init15to32();
  65. static VOID    Init15to24();
  66. static VOID    Init15to16();
  67. static VOID    Init15to8();
  68. static VOID    Init15toFake();
  69. static VOID    Init8to32();
  70. static VOID    Init8to24();
  71. static VOID    Init8to16();
  72. static VOID    Init8to15();
  73. static VOID    End24to32();
  74. static VOID    End24to24();
  75. static VOID    End24to16();
  76. static VOID    End24to15();
  77. static VOID    End24to8();
  78. static VOID    End24toFake();
  79. static VOID    End16to32();
  80. static VOID    End16to24();
  81. static VOID    End16to16();
  82. static VOID    End16to15();
  83. static VOID    End16toFake();
  84. static VOID    End16to8();
  85. static VOID    End15to32();
  86. static VOID    End15to24();
  87. static VOID    End15to16();
  88. static VOID    End15to15();
  89. static VOID    End15to8();
  90. static VOID    End15toFake();
  91. static VOID    End8to32();
  92. static VOID    End8to24();
  93. static VOID    End8to16();
  94. static VOID    End8to15();
  95. static VOID    End8to8();
  96. static VOID    Set320x400();
  97. static VOID    Set320x480();
  98. static VOID    Set640x400();
  99. static VOID    Set640x480();
  100. static VOID    Set80x50();
  101.  
  102. //IN-LINE FUNCTIONS
  103. VOID    Set_Mode(UWORD Mode);
  104. VOID    Clear_ScreenD(UDWORD size, UDWORD col);
  105. UWORD    FakeMode;
  106. #else
  107. //GLOBAL VARIABLES
  108. extern UWORD    FakeMode;
  109. #endif
  110.  
  111. //GLOBAL FUNCTIONS
  112. VOID    Transform_bpp(UWORD Workbpp, UWORD Screenbpp, UBYTE *WorkBuffer, UBYTE *ScreenBuffer);
  113. VOID    ReloadPalette();
  114. VOID    InitStuff();
  115.  
  116.